UDDI (short for Universal Description, Discovery, and Integration (UDDI)) is a web-based distributed directory to enable entities, such as businesses and web services, to be listed on the Internet, discovered, and then accessed. UDDI uses a registry based on the eXtensible Markup Language (XML). The XML-based UDDI registry enables entities to be listed in the UDDI registry, which may be accessed through a public Internet or through a private intranet. When registered, the registration includes three components which are as follows: a so-called “white pages” registration including addresses, contact information, and known identifiers; a so-called “yellow pages” registration including industrial categorizations based on standard taxonomies (e.g., using standard industrial categorization schemes, industry codes, product codes, business identification codes, and the like) to make it easier to search through the listings; and a so-called “green pages” registration including technical information about services provided or exposed (e.g., discovery information including, interface information, a Uniform Resource Locator (URL), a WSDL (Web Services Description Language) of the service, and the like). Past specifications define many aspects of UDDI. For example, the UDDI Version 3.0.2 Specification describes the web services, data structures, and the behavior of the UDDI registry (see, e.g., OASIS UDDI Version 3.0.2 Specification, dated Oct. 19, 2004).
UDDI may be implemented as a web service accessible using standard protocols, such as Simple Object Access Protocols (SOAP) for messaging and WSDL documents for describing the protocols, bindings, and message formats required to interact with the web services listed in the UDDI registry. A service, such as a Web service is an application or program that makes itself available over the Internet or an intranet, may use standardized messaging, such as XML (eXtensible Markup Language) and SOAPS and may use some type of location mechanism, such as UDDI to locate the service and its Application Program Interface (API).
The UDDI registry may include UDDI data types. UDDI data types refer to one or more of the following data types used by the UDDI registry when storing and accessing the above-noted white, yellow, and green page information, a businessEntity data type for describing a business or other entity for which information is being registered; a businessService data type for describing a set of web services which may contain one or more bindingTemplates; a bindingTemplate data type for information necessary to invoke specific web services which may encompass bindings to one or more protocols, such as HTTP (Hyper Text Transfer Protocol); and a tModel data type which is a technical model representing reusable constructs.
UDDI may thus provide a useful mechanism to enable entities (e.g., web services, businesses, and the like) to register at a UDDI registry one or more of the following, the identity of the entity, the location of the entity, and how to access and interact with the entity. As such, other entities can find and then access the registered entities.